// 导入request请求工具类
import {
    getBaseUrl,
    requestUtil
} from '../../utils/requestUtil.js';
import regeneratorRuntime from '../../lib/runtime/runtime';
Page({
    /**
     * 页面的初始数据
     */
    data: {
        scrollTop: 0, //设置竖向滚动条位置
        currentIndex: 0, //当前左侧菜单的索引
        leftMenuList: [], // 左侧菜单数据
        rightContent: [], // 右侧商品数据
        baseUrl: '',
    },

    // 所有商品类别数据
    Cates: [],
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        this.getCates()
        const baseUrl = getBaseUrl();
        this.setData({
            baseUrl
        })
    },
    /**
     * 获取商品分类数据
     * 思路:
     * 1.通过后端接口获取所有数据赋值给Cates数组
     * 2.左侧菜单 使用map集合遍历数组中的name属性(商品大类的名称)
     * 3.右侧菜单 根据数据的索引获取每个数据 从中取出smallTypeList集合(商品小类的数据)
     */
    async getCates() {
        const result = await requestUtil({
            url: '/bigType/findCategories',
            method: "GET"
        });
        this.Cates = result.message;
        console.log(this.Cates);
        let leftMenuList = this.Cates.map(v => v.name);
        let rightContent = this.Cates[0].smallTypeList;
        this.setData({
            leftMenuList,
            rightContent
        })
    },
    // 左侧菜单的点击事件
    handleMenuItemChange(e) {
        console.log(e)
        const {
            index
        } = e.currentTarget.dataset;
        console.log("index=" + index)
        let rightContent = this.Cates[index].smallTypeList;
        this.setData({
            currentIndex: index,
            rightContent,
            scrollTop:0
        })
    },
    /**
     * 生命周期函数 监听页面显示
     */
    onShow: function () {
        console.log("onShow");
        const app=getApp();
        var index=app.globalData.index;
        console.log("index="+index)
        if(index!=-1){
          this.getCates2(index);
          app.globalData.index=-1; // 重置index
        }
      },
    /**
     * 获取商品分类数据 从首页数据跳过来的
     */
    async getCates2(index){
        const baseUrl=getBaseUrl();
        const result = await requestUtil({
          url: '/bigType/findCategories',
          method: "GET"
        });
        this.Cates=result.message;
        let leftMenuList=this.Cates.map(v=>v.name)
        let rightContent=this.Cates[index].smallTypeList;
        this.setData({
          leftMenuList,
          rightContent,
          currentIndex:index,
          scrollTop:0,
          baseUrl
        })
      },
})